package oj;

import java.util.Scanner;

public class Day38S {
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNext()){
            int N=sc.nextInt();
            int M=sc.nextInt();
            int k=sc.nextInt();
            int[][] arr=new int[N+1][M+1];
            int i=0,j=0;
            for(int z=0;z<k;z++){
                i=sc.nextInt();
                j=sc.nextInt();
                arr[i][j]=1;
            }
            double[][] dp=new double[N+1][M+1];
            dp[1][1]=1.0;
            for(int n=1;n<=N;n++){
                for(int m=1;m<=M;m++){
                    if(n==1 && m==1) continue;
                    if(arr[n][m]==0){
                        dp[n][m]=(m==M?1:0.5)*dp[n-1][m]+(n==N?1:0.5)*dp[n][m-1];
                    }
                }
            }
            System.out.printf("%.2f\n",dp[N][M]);
        }
    }
}
